Cellular radio systems, commonly used for telephony, are increasingly used for transmission of data from various sources to subscribers. The data are usually requested by a subscriber, by means of the cellular system, and transmitted to the cellular system from appropriate sources over the Internet (or any other external IP network). A block diagram of the major components of a typical system involved in the down path of data transmission is shown in FIG. 1. The data obtained from an external network 10 are passed through the core network of the cellular system, which in a CDMA system, for example, comprises a Packet Data Service Node 12 (PDSN), and a Base Station Controller 14 (BSC—forming part of a Radio Access Network—RAN) to a Base Transceiver Station 16 (BTS), with which the requesting subscriber is linked, and finally radio-transmitted from the BTS to the respective subscriber unit 18 (SU). From the instant that data are requested until all requested data have been received, the SU is in a data connection state. In conformance with the TCP Protocol, all data are transmitted as packets; each packet arriving at the SU is either acknowledged or, if a network-caused error is detected or if a packet has not been received within a certain time period, its retransmission is requested. Data arriving at any one BSC are accumulated in buffer storage, where a storage bin, or queue, is designated for each active subscriber unit, that is—for each SU that is in a data connection state and in radio communication with any BTS controlled by that BSC. Data are transmitted from the buffer to the SUs according to some schedule, explained below. The present invention is concerned with the data flow from the core network (hereinafter referred to as PDSN—its manifestation in typical CDMA systems), through a buffer storage bin, over the base station's radio transmitter, to the receiver in the SU.
Cellular data transmission differs from cellular voice transmission in several aspects: (a) The rate of transmission, in the case of data, varies greatly with time, as well as among subscriber units and with the type of application, while for voice it remains constant. (b) Moreover, the rate for data may exceed that for voice by orders of magnitude. (c) Data need not, generally, be transmitted continuously, but may be transmitted in bursts (i.e. many packets in close succession), with considerable intervals between them; however certain types of data applications (notably streaming types) have different tolerances to duration of intervals. (d) Various subscribers may be given different levels of quality of service (QoS)—for example, in terms of guaranteed minimum transmission rate. In order to accommodate these characteristics, new operating standards are being introduced to cellular systems. In particular, systems using the Code Division Multiple Access (CDMA) mode of transmission, have a new standard, known as CDMA 2000.
As is known, a channel in a CDMA system is defined by a particular code out of a set of N mutually orthogonal codes, known as a Walsh set. According to the CDMA 2000 standard there are defined, for any one radio transmission facility (e.g. a radio carrier), a set of N=2n fundamental channels, in terms of N Walsh codes, where N is typically 64 (n=6). Typically, a fundamental channel (FCH, also known as 1× channel, which is similar to a regular voice channel) carries data at a rate of about 10 Kbits per second. By defining suitable common subsets of the codes, fundamental channels are combinable, in a hierarchical manner into higher-rate (i.e. wider-bandwidth) channels as follows: A set of N/2 (e.g. 32) 2× channels, each carrying about 20 Kbits per second; a set of N/4 (e.g. 16) 4× channels, each carrying about 40 Kbits per second; and so on. The corresponding Walsh codes are designed as a hierarchical binary structure, wherein, at each level, a code is a subset of certain two codes at the next lower level. Thus, for example, a 4× code is a subset of four related fundamental channel codes (two levels lower). At any time, any available channel at any of the given rates (i.e. at any of the rate levels discussed above) may be allocable to any active subscriber unit, subject to the hierarchy discussed above and to certain constraints discussed below.
In common with other cellular systems, in a system operating under the CDMA 2000 standard, the signal power transmitted to any subscriber unit (SU) is a function of the radio transmission channel quality (which depends, inter alia, on the distance between the subscriber unit and the base station), whereby the power is adjusted to maintain a given ratio between the received signal and the combination of noise and interference. This ratio is, however, also a function of the channel bandwidth and thus of the rate level of the channel; the higher the rate (i.e. the wider the band), the lower the processing gain of the CDMA and thus the higher the required transmission power. It is also to be noted that the total power of all signals transmitted at any instant is subject to a maximum value, characteristic of the transmitter.
The transmission from each BTS to active subscriber units of data, addressed to them and accumulated in the buffer storage, is scheduled by periodically allocating them channels. According to current practice, each cycle of allocations is carried out for an ensuing allocation time slot, whose duration is in the order of a few hundred milliseconds, typically as follows: A storage bin is selected on a round-robin basis (or at random) and the amount of data accumulated therein is compared with a series of threshold values; according to the outcome, a commensurate transmission rate is selected from among the given levels. If a channel of that rate is available, it is allocated to the subscriber unit corresponding to the bin, provided that the power required to transmit it to the subscriber unit does not cause the total power to exceed the maximum. Failing this, a channel of half the desired rate, if available, is allocated to that subscriber unit, again subject to the power test; and so on. Another bin is then chosen and the same process is followed. This cycle is repeated until there are no channels left or until any allocation would cause the maximum available power to be exceeded or until there are no data waiting in storage. In order to maintain the radio communication, a fundamental channel (at the lowest rate level) is usually allocated to each active SU for which there are (temporarily) no data waiting in the buffer. Variations of the allocation procedure described above are also in common practice; in one prevalent variation, allocation is carried out at the beginning of each allocation time slot for several time slots ahead, the allocation being corrected or supplemented at each successive time slot. According to the results of the allocation, data are transmitted to SUs during the ensuing allocation time slot and subsequently another allocation is made. Thus, during each allocation time slot, some (possibly all) active SUs receive data, each at some rate and some power level that is associated with the rate, while the total transmitted power from the BTS is generally near its maximum; the rates of transmission to the various SUs generally vary from one allocation time slot to another. The process of channels allocation is also, and more generally, referred to as scheduling.
Scheduling procedures in present practice, as outlined above, do not optimally utilize the limited transmission resources, which are the overall data rate capacity and the maximum overall power. In particular, they allow spending an inappropriately large portion of the power on high rate transmission to subscriber units having poor radio reception; they also cause transmission rates to be dependent solely on buffered data sizes, which by themselves are random, and possibly on random selection. Moreover, procedures in present practice do not generally include QoS considerations and also cannot be geared to any business policy, such as would control transmission so as to maximize some variable (which may, for example, be overall transmission rate or overall revenue). Since scheduling and channel allocation procedures, as described above, are built into currently available realizations of the BSC and are not easily modifiable, an external scheduling unit has been proposed, which is designed to be interposed in the path of the downstream data between the PDSN and the BSC and to preferably control the rate of data ingressed to each bin of the buffer in the BSC. Such an external unit, e.g. 20 in FIG. 1, would typically include a program for periodically allocating the resources of the various BTSs to the corresponding subscriber units, whereby also some or all of the other factors outlined above have an effect. A method underlying such a program has been disclosed, for example, in co-pending Israeli Patent Application No. 151644, filed on Sep. 5, 2002 by the present applicant and entitled “Allocation of radio resources in a CDMA2000 cellular system”.
One of the most important factors being brought to bear in an external scheduling unit is the power level currently required for radio transmission to each active subscriber unit (which, as noted above, is a function of its reception conditions and varies greatly with time). That power level is known to the BSC, through communication with the BTSs. However, this information is generally not available at the standard interface between the BSC and the PDSN. Thus any external scheduling unit, which, as noted, is typically interposed in that interface, has no means by which to directly obtain information on current power levels of transmission to subscriber units. There is therefore a need for a method to obtain at least an estimate of the power levels required for radio transmission to the subscriber units, in order for an external scheduling unit to effectively carry out its function. A similar need may exist in an external unit that controls data flow to the BSC for also other purposes or in any other type of external units.